前端工程的三大技能:HTML、CSS、JAVASCRIPT,熟悉這三大語言之後,就可以組合出合式各樣的網頁,不論是精美的介紹頁面,或是顯示很複雜的資料,只要打開瀏覽器,就彷彿得到全世界,可以創造出想要的東西,創造出這些東西就是前端工程師的工作。但是真的有那麼簡單嗎?
做一個精美的頁面很簡單,但是做一千個精美的頁面就不簡單了。因此才需要前端工程師的協助。工程之所以為工程,意思就是說可以使用各種工程的方法,像是模組化、狀態化等等方法來快速完成大量而且有序的工作。這中間的過程將會是一個很大的鴻溝,以自身的例子,要跨過去非常不簡單需要花很多力氣。
前端工程師最常面對到最尖銳的提問是:前端除了顯示畫面和資料還能做什麼?
在網路上有很多厲害的高手,用如同魔法般的程式碼寫出怎麼看也看不懂的效果。縱使我們不是那樣遙不可及的天才,只是個平庸的市井小民,還是能透過努力去彌補這個差距。
不積蹞步,無以致千里;不積小流,無以成江海。騏驥一躍,不能十步;駑馬十駕,功在不捨。
荀子勸學篇
而彌補這差距有這三個方向可以努力:
每個人都有自己喜歡的技術,例如前端的三大框架:Vue、React、Angular,每個框架都有自己的擁護者。如果是自己的事情的話,可以使用「我喜歡」或「我討厭」之類的話推崇或排斥某個框架,因為對自己喜歡的框架有無比的熱情。
但是如果在公司或團隊當中,就得屏除自己的個人喜好,不論討厭或喜歡都要去接觸各種技術,除了增進自己的深度和廣度之外,也是增進團隊的流暢。還有如何了解自己本業以外的技術,除了合作更加流暢之外也可以增加自己的工作效率,例如:什麼是restful api、版本控制的時候使用rebase的時機點等等。
溝通我認為是最難的一部分。因為溝通的方法因人而異,沒有教科書可以參考也沒有辦法一招走天下,全憑自身的修養和經驗的累積。
但即使如此,溝通還是有幾個層次的區別:
前端工程師要溝通的人很多,要和設計師、UX、後端、PM、主管等等溝通,溝通能力可以說是必備的能力之一。
這方面就是工程師的硬實力,主要的差異來自經驗的廣度和實力的深度
此次鐵人賽預計從這三方面來談,很多都是經驗分享。將自身的經驗和技術筆記寫下來,那些讓自己感覺似乎有進步,不再那麼菜了,可以當一個獨當一面的前端工程師的過程。